// 定义包路径，用于组织代码结构
package com.itheima.branch;

// 导入Scanner类，用于从键盘读取用户输入
import java.util.Scanner;

// 定义一个公共类，类名必须与文件名相同
public class IfDemo1 {
    // 主方法，程序的入口点，所有程序都从这里开始执行
    public static void main(String[] args) {
        // 目标：认识if语句，搞清楚其写法和应用场景。 （独立功能独立成方法）
        // 调用test1方法，演示单分支if语句的使用
        test1();
        // 调用test2方法，演示if-else双分支语句的使用
        test2();
        // 调用test3方法，演示if-else if-else多分支语句的使用
        test3();
    }

    // 定义第一个测试方法，演示单分支if语句
    public static void test1(){
        // 定义一个整型变量age并赋值为10，用来表示年龄
        int age = 10;
        // if条件判断：如果age大于18，则执行大括号内的代码块
        if(age > 18){
            // 如果条件成立，打印"可以上网"
            System.out.println("可以上网");
        }
        // 无论if条件是否成立，都会执行的代码
        System.out.println("洗洗睡吧！");
        // 注意：if语句中如果只有一行代码，大括号可以省略不写
    }

    // 定义第二个测试方法，演示if-else双分支语句的使用
    public static void test2(){
        // 需求： 假如您的钱包金额是90元，现在要转出去80元，请用if分支实现
        // 要求：钱够就提示转账成功，钱不够提示余额不足
        // 定义整型变量money表示钱包金额，这里赋值为10元
        int money = 10;
        // if条件判断：如果money大于等于80，则执行if块内的代码
        if(money >= 80){
            // 如果条件成立（钱够），打印"转账成功"
            System.out.println("转账成功");
        // else分支：如果if条件不成立，则执行else块内的代码
        }else{
            // 如果条件不成立（钱不够），打印"余额不足"
            System.out.println("余额不足");
        }
    }

    // 定义第三个测试方法，演示if-else if-else多分支语句的使用
    public static void test3(){
        // 需求：有个绩效系统，每个月由主管给员工打分，
        // 会输出你这个月的绩效级别：A+ A B C D
        // 级别的区间情况: A+ 90-100 A 80-90 B 70-80 C 60-70 D 0-60
        // 打印提示信息，让用户输入员工的分数
        System.out.println("请您录入该员工的分数：");
        // 创建Scanner对象，用于读取用户从键盘输入的数据
        Scanner sc = new Scanner(System.in);
        // 调用nextInt()方法读取用户输入的整数，赋值给score变量
        int score = sc.nextInt();
        // 第一个条件：如果分数在90到100之间（包括90和100）
        if(score >= 90 && score <= 100){
            // 条件成立，打印绩效级别"A+"
            System.out.println("A+");
        // 第二个条件：如果分数在80到90之间（包括80，不包括90）
        }else if(score >= 80 && score < 90){
            // 条件成立，打印绩效级别"A"
            System.out.println("A");
        // 第三个条件：如果分数在70到80之间（包括70，不包括80）
        }else if(score >= 70 && score < 80){
            // 条件成立，打印绩效级别"B"
            System.out.println("B");
        // 第四个条件：如果分数在60到70之间（包括60，不包括70）
        }else if(score >= 60 && score < 70){
            // 条件成立，打印绩效级别"C"
            System.out.println("C");
        // 第五个条件：如果分数在0到60之间（包括0，不包括60）
        }else if(score >= 0 && score < 60){
            // 条件成立，打印绩效级别"D"
            System.out.println("D");
        // 最后一个分支：如果以上所有条件都不满足（分数不在0-100范围内）
        }else {
            // 打印提示信息，说明分数输入有误
            System.out.println("分数输入有误");
        }
    }
}
